﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using log4net;
using System.Web.Mvc;
using TheBullysStore.Models.ModuloAdministracion.Horario;
using TheBullysStore.Models.ModuloAdministracion.Edificio;

namespace TheBullysStore.Controllers
{
    public class HorarioController : Controller
    {
        private static ILog log = LogManager.GetLogger(typeof(HorarioController));
        EdificioFacade edificioFacade = new EdificioFacade();
        HorarioFacade horarioFacade = new HorarioFacade();
        // GET: /Horario/

        public ActionResult Index()
        {
            return View();
        }


        public ActionResult Horario()
        {
            return View();
        }



        public ActionResult RegistrarHorario()
        {
            return View();
        }


        public ActionResult BuscarHorario()
        {
            return View();
        }
        [HttpPost]
        public JsonResult RegistrarHorario(HorarioBean horario)
        {
            try
            {
                string mensaje;
                mensaje = horarioFacade.RegistrarHorario(horario);


                //System.Diagnostics.Debug.WriteLine("--------------------------------------_________MIERDA> " + edificio.conexion);

                return Json(new { mensaje });
            }
            catch (Exception ex)
            {
                if (horario.accion == "0")
                {
                    log.Error(" Eliminar horario - GET(EXCEPTION):", ex);
                }


                if (horario.accion == "1")
                {
                    log.Error(" Registrar horario - GET(EXCEPTION):", ex);
                }

                if (horario.accion == "2")
                {
                    log.Error(" Modificar horario - GET(EXCEPTION):", ex);
                }
                
                return Json(new { me = "Ocurrió un error al registrar Horario" });
            }
        }
        [HttpPost]
        public JsonResult cargarEdificios(EdificioBean edificio)
        {
            try
            {
                List<EdificioBean> listaEdificio = edificioFacade.Listaredificio(edificio);
                return Json(new { listaEdificio });
            }
            catch (Exception ex)
            {
              //  log.Error("CargarEdificios - GET(EXCEPTION):", ex);
                return Json(new { listaEdificio = "Ocurrió un error al cargar los Edificios" });
            }

        }


        [HttpPost]
        public JsonResult buscarCargo()
        {
            System.Diagnostics.Debug.WriteLine("casi busca cargo ");



            List<Cargo> listaCargo = horarioFacade.buscarCargo();

            //System.Diagnostics.Debug.WriteLine("--------------------------------------_________MIERDA> " + edificio.conexion);

            return Json(new { listaCargo });
        }

        [HttpPost]
        public JsonResult buscarPersonal(FiltroBusqueda filtroBusqueda)
        {
            System.Diagnostics.Debug.WriteLine("casi busca personañ ");



            List<Personal> listaPersonal = horarioFacade.buscarPersonal(filtroBusqueda);



            return Json(new { listaPersonal });
        }


        [HttpPost]
        public JsonResult buscarHorario(int id_personal)
        {
            System.Diagnostics.Debug.WriteLine("casi busca personañ ");



            HorarioBean horario = horarioFacade.buscarHorario(id_personal);



            return Json(new { horario });
        }


    }
}
